Skip to content

Fix: geometry-lab angle/pan now repaint the panels#12

Merged
silviot merged 1 commit into
mainfrom
fix/pipeline-lab-reactivity
May 29, 2026
Merged

Fix: geometry-lab angle/pan now repaint the panels#12
silviot merged 1 commit into
mainfrom
fix/pipeline-lab-reactivity

Conversation

@silviot

@silviot silviot commented May 29, 2026

Copy link
Copy Markdown
Collaborator

Bug: in the pipeline geometry lab, panning the rotated-log did nothing, and the rotation slider moved only the dashed axis line — the rotated-log image stayed put.

Cause: the render $effect read gammaRad / experiment.panU / experiment.panV only inside its requestAnimationFrame callback. Svelte 5 tracks dependencies read synchronously during the effect, not in a later async callback, so angle/pan changes never re-triggered a render. The axes overlay updated because it's a separate $derived used in the template.

Fix: read rot / kTwist / panU / panV synchronously in the effect body; the rAF callback closes over those locals.

Verified in-browser: angle now rotates the rotated-log image; dragging it rotates+zooms the tententoon. Tests 22/22, check clean.

🤖 Generated with Claude Code

The render effect read gammaRad / experiment.panU / experiment.panV only
inside its requestAnimationFrame callback. Svelte 5 tracks dependencies read
synchronously during the effect run, not ones read later in an async callback,
so changing the angle or panning never re-triggered a render — only the axes
overlay (a $derived used directly in the template) updated. Symptoms: pan did
nothing; the rotation slider moved only the dashed axis line while the rotated-
log image stayed put.

Read rot / kTwist / panU / panV synchronously in the effect body so they're
tracked; the rAF callback now closes over those locals.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@silviot silviot merged commit 0ab1fbe into main May 29, 2026
1 check passed
@silviot silviot deleted the fix/pipeline-lab-reactivity branch May 29, 2026 05:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant